export interface platformConfigType {
  platformOverview: string
  tabsActiveKey: string
  platformOpen: boolean
  platformModalFont: any
  getPlatformTextFont: (params: string) => void
  platformExamineShowOpen: (params: any) => void
  changeTabs: (params: any) => void
  platformDeleteData: (params: any) => void
  showPlatFormOpen: () => void
  clearPlatFormOpen: () => void
  platformClickSave: () => void
}

export interface instructionsConfigType {
  instructionsOverview: string
  instructionsModalFont: any
  instructionsOpen: boolean
  getInstructionsTextFont: (params: string) => void
  deleteInstructions: (params: any) => void
  showInstructionsOpen: any
  clearInstructionsOpen: () => void
  instructionsClickSave: () => void
  instructionsExamineShowOpen: (params: any) => void
}

export interface publicNoticeConfigType {
  publicNoticeOverview: string
  publicNoticeOpen: boolean
  publicNoticeModalFont: any
  getPublicNoticeTextFont: (params: string) => void
  publicNoticeExamineShowOpen: (params: any) => void
  publicNoticeDeleteData: (params: any) => void
  showPublicNoticeOpen: () => void
  clearPublicNoticeOpen: () => void
  publicNoticeClickSave: () => void
}

export interface tableData {
  id: number
  type: string
  content: string
  platformId: number
  status: number
  createDate: string
  updateDate: string
  createUser: null | unknown
  updateUser: null | unknown
  isDeleted: boolean
}
export interface tableDataTypeInterface {
  tableData: tableData[]
}
export interface platformSettingsContextType {
  platformConfig: platformConfigType
  instructionsConfig: instructionsConfigType
  publicNoticeConfig: publicNoticeConfigType
  tableDataType: tableDataTypeInterface
}
